package com.lysj.admin.master.common.annotation;

import com.lysj.admin.master.common.CommonConstant;
import org.springframework.core.annotation.AliasFor;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target({ElementType.METHOD, ElementType.PARAMETER})
@Retention(RetentionPolicy.RUNTIME)
public @interface TokenInfo {
    String headName() default CommonConstant.TOKEN_HEADER_NAME;

    @AliasFor("value")
    String[] property() default CommonConstant.JWT_SUB;

    @AliasFor("property")
    String[] value() default CommonConstant.JWT_SUB;

    boolean allProperty() default false;
}
